package net.zoneland.knowledge.model;

import java.io.Serializable;
import java.util.StringJoiner;

/**
 * 文档校验处理后的内容对象.
 */
public class DocumentProcessedContent implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 段落数(第几段,以换行符分段,从0开始).
     */
    private int row_num;

    /**
     * 列数(第几个字符,词取最后一个字符位置,从0开始).
     */
    private int index_num;

    /**
     * 有误的字词.
     */
    private String error_word;

    /**
     * 更正,替换词.
     */
    private String correct_word;

    /**
     * 字符前后语句.
     */
    private String front_behind_word;

    /**
     * 检验类型：1表示错字纠错，2表示敏感词纠错,3表示专有词纠错.
     */
    private String type;

    /**
     * 获取 段落数(第几段以换行符分段).
     *
     * @return row_num 段落数(第几段以换行符分段).
     */
    public int getRow_num() {
        return this.row_num;
    }

    /**
     * 设置 段落数(第几段以换行符分段).
     *
     * @param row_num 段落数(第几段以换行符分段).
     */
    public void setRow_num(final int row_num) {
        this.row_num = row_num;
    }

    /**
     * 获取 列数(第几个字符词取最后一个字符位置).
     *
     * @return index_num 列数(第几个字符词取最后一个字符位置).
     */
    public int getIndex_num() {
        return this.index_num;
    }

    /**
     * 设置 列数(第几个字符词取最后一个字符位置).
     *
     * @param index_num 列数(第几个字符词取最后一个字符位置).
     */
    public void setIndex_num(final int index_num) {
        this.index_num = index_num;
    }

    /**
     * 获取 有误的字词.
     *
     * @return error_word 有误的字词.
     */
    public String getError_word() {
        return this.error_word;
    }

    /**
     * 设置 有误的字词.
     *
     * @param error_word 有误的字词.
     */
    public void setError_word(final String error_word) {
        this.error_word = error_word;
    }

    /**
     * 获取 更正替换词.
     *
     * @return correct_word 更正替换词.
     */
    public String getCorrect_word() {
        return this.correct_word;
    }

    /**
     * 设置 更正替换词.
     *
     * @param correct_word 更正替换词.
     */
    public void setCorrect_word(final String correct_word) {
        this.correct_word = correct_word;
    }

    /**
     * 获取 字符前后语句.
     *
     * @return front_behind_word 字符前后语句.
     */
    public String getFront_behind_word() {
        return this.front_behind_word;
    }

    /**
     * 设置 字符前后语句.
     *
     * @param front_behind_word 字符前后语句.
     */
    public void setFront_behind_word(final String front_behind_word) {
        this.front_behind_word = front_behind_word;
    }

    /**
     * 获取 检验类型：1表示错字纠错，2表示敏感词纠错3表示专有词纠错.
     *
     * @return type 检验类型：1表示错字纠错，2表示敏感词纠错3表示专有词纠错.
     */
    public String getType() {
        return this.type;
    }

    /**
     * 设置 检验类型：1表示错字纠错，2表示敏感词纠错3表示专有词纠错.
     *
     * @param type 检验类型：1表示错字纠错，2表示敏感词纠错3表示专有词纠错.
     */
    public void setType(final String type) {
        this.type = type;
    }

    @Override
    public String toString() {
        return new StringJoiner(", ", DocumentProcessedContent.class.getSimpleName() + "[", "]")
                .add("row_num=" + row_num)
                .add("index_num=" + index_num)
                .add("error_word='" + error_word + "'")
                .add("correct_word='" + correct_word + "'")
                .add("front_behind_word='" + front_behind_word + "'")
                .add("type='" + type + "'")
                .toString();
    }
}
